home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Collections: Franz PD
/
Franz PD Disk #334 (1994-06)(Rhein-Sieg-Soft).zip
/
Franz PD Disk #334 (1994-06)(Rhein-Sieg-Soft).adf
/
tracker.library
/
tracker.h
< prev
next >
Wrap
C/C++ Source or Header
|
1994-06-11
|
9KB
|
229 lines
#ifndef LIBRARIES_TRACKER_H
#define LIBRARIES_TRACKER_H
/*
** Filename: libraries/tracker.h
** Revision: 6.8
** Date: 94/06/11
**
** Definitions for use when using tracker.library
**
** (C) Arnold Schommer
** Erikaweg 16
** 40670 Meerbusch-Strümp, Germany
*/
#ifndef EXEC_ALERTS_H
#include <exec/alerts.h>
#endif
#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif
#ifndef GRAPHICS_GFX_H
#include <graphics/gfx.h> /* wegen PLANEPTR */
#endif
#ifndef DOS_DOS_H
#include <dos/dos.h> /* wegen BPTR */
#endif
#ifndef UTILITY_TAGITEM_H
#include <utility/tagitem.h> /* wegen Tag */
#endif
/* Prototypes: */
struct Library *TRK_OpenLibrary( UBYTE *libName, ULONG version );
struct Library *TRK_OpenStdLibrary( ULONG number, version );
void TRK_CloseLibrary( struct Library *library );
APTR TRK_AllocMem( ULONG byteSize, ULONG requirements );
void TRK_FreeMem( APTR memoryBlock );
BYTE TRK_OpenDevice( UBYTE *devName, ULONG unit,
struct IORequest *ioRequest, ULONG flags );
void TRK_CloseDevice( struct IORequest *ioRequest );
struct MsgPort *TRK_CreatePort( UBYTE *name, long pri );
void TRK_DeletePort( struct MsgPort *io );
struct IORequest *TRK_CreateExtIO( struct MsgPort *msg, long size );
void TRK_DeleteExtIO( struct IORequest *io );
#define TRK_CreateStdIO(port) \
( (struct IOStdReq *)TRK_CreateExtIO(port,sizeof(struct IOStdReq)) )
#define TRK_DeleteStdIO TRK_DeleteExtIO
struct WBStartup *TRK_GetWBMsg(void);
BYTE TRK_AllocSignal( long signalNum );
void TRK_FreeSignal( long signalNum );
BPTR TRK_Open( UBYTE *name, long accessMode );
BPTR TRK_OpenFromLock( BPTR lock );
LONG TRK_Close( BPTR file );
BPTR TRK_Lock( UBYTE *name, long type );
BPTR TRK_DupLock( BPTR lock );
BPTR TRK_DupLockFromFH( BPTR fh );
void TRK_UnLock( BPTR lock );
struct FileInfoBlock *TRK_Examine( BPTR lock );
struct FileInfoBlock *TRK_ExamineFH( BPTR fh );
struct FileInfoBlock *TRK_ExamineName( UBYTE *name );
LONG TRK_ExNext( struct FileInfoBlock *fileInfoBlock );
void TRK_FreeFIB( struct FileInfoBlock *fib );
struct InfoData *TRK_Info( BPTR lock );
struct InfoData *TRK_InfoName( UBYTE *name );
BPTR TRK_LoadSeg( UBYTE *name );
BPTR TRK_NewLoadSeg( UBYTE *file, struct TagItem *tags ),
TRK_NewLoadSeg( UBYTE *file, Tag tag1, ...);
void TRK_UnLoadSeg( BPTR seglist );
APTR TRK_AllocDosObject( ULONG type, struct TagItem *tags ),
TRK_AllocDosObjectTags( ULONG type, Tag tag1, ...);
void TRK_FreeDosObject( APTR ptr );
BOOL TRK_StartNotify( struct NotifyRequest *notify );
void TRK_EndNotify( struct NotifyRequest *notify );
struct TextFont *TRK_OpenFont( struct TextAttr *textAttr );
struct TextFont *TRK_OpenDiskFont( struct TextAttr *textAttr );
void TRK_CloseFont( struct TextFont *textFont );
PLANEPTR TRK_AllocRaster( ULONG width, ULONG height );
void TRK_FreeRaster( PLANEPTR p );
WORD TRK_GetSprite( struct SimpleSprite *sprite, long num );
void TRK_FreeSprite( long num );
struct Window *TRK_OpenWindow( struct NewWindow *newWindow ),
*TRK_OpenWindowTagList(struct NewWindow *newWindow,
struct TagItem *tagList),
*TRK_OpenWindowTags(struct NewWindow *newWindow, Tag tag1, ...);
*TRK_OpenWdOnPubScreen(struct NewWindow *newWindow,
UBYTE *pubscreen),
*TRK_OpenWdOnPSTagList(struct NewWindow *newWindow,
UBYTE *pubscreen,
struct TagItem *tagList),
*TRK_OpenWdOnPSTags(struct NewWindow *newWindow,
UBYTE *pubscreen, Tag tag1, ...);
void TRK_CloseWindow( struct Window *window );
struct Screen *TRK_OpenScreen( struct NewScreen *newScreen );
struct Screen *TRK_OpenScreenTagList( struct NewScreen *newScreen,
struct TagItem *tagList ),
*TRK_OpenScreenTags(struct NewScreen *newScreen, Tag tag1, ...);
BOOL TRK_CloseScreen( struct Screen *screen );
BOOL TRK_SetMenuStrip( struct Window *window, struct Menu *menu );
void TRK_ClearMenuStrip( struct Window *window );
BOOL TRK_ResetMenuStrip( struct Window *window, struct Menu *menu );
BOOL TRK_Request( struct Requester *requester, struct Window *window );
void TRK_EndRequest( struct Requester *requester );
BOOL TRK_SetDMRequest( struct Window *window, struct Requester *requester );
BOOL TRK_ClearDMRequest( struct Window *window );
struct Window *TRK_BuildSysRequest( struct Window *window,
struct IntuiText *body, *posText, *negText,
ULONG flags, width, height );
void TRK_FreeSysRequest( struct Window *window );
struct Preferences *TRK_GetPrefs(long size), *TRK_GetDefPrefs(long size),
*TRK_SetPrefs( struct Preferences *preferences,
long inform, BOOL freeflag );
void TRK_FreePrefs( struct Preferences *prefs );
struct Screen *TRK_LockPubScreen( UBYTE *name );
void TRK_UnlockPubScreen( struct Screen *screen );
struct DrawInfo *TRK_GetScreenDrawInfo( struct Screen *screen ),
*TRK_GetScDIPubScreen( UBYTE *psname );
void TRK_FreeScreenDrawInfo( struct DrawInfo *drawInfo );
void TRK_AddIntServer(long intNumber, struct Interrupt *interrupt);
void TRK_RemIntServer(struct Interrupt *interrupt);
APTR TRK_AllocAslRequest(ULONG type, struct TagItem *ptags),
TRK_AllocAslRequestTags(ULONG type, Tag tag1, ...);
void TRK_FreeAslRequest(APTR request);
struct FileRequester *TRK_AllocFileRequest(void);
#define TRK_FreeFileRequest TRK_FreeAslRequest
APTR TRK_AslRequest(ULONG type, struct TagItem *ptags),
TRK_AslRequestTags(ULONG type, Tag tag1, ...);
#define TRK_FreeRequest TRK_FreeAslRequest
struct RDArgs *TRK_ReadArgs(UBYTE *template, LONG *array, struct RDArgs *args);
void TRK_FreeArgs(struct RDArgs *args);
APTR TRK_GetVisualInfoA(struct Screen *screen, struct TagItem *taglist),
TRK_GetVisualInfo(struct Screen *screen, Tag tag1, ...),
TRK_GetVIPubScreenA(UBYTE *name, struct TagItem *taglist),
TRK_GetVIPubScreen(UBYTE *name, Tag tag1, ...);
void TRK_FreeVisualInfo(APTR vi);
struct Gadget *TRK_CreateContext(struct Gadget **glistptr);
void TRK_FreeGadgets(struct Gadget **gad);
struct Menu *TRK_CreateMenusA(struct NewMenu *newmenu, struct TagItem *taglist),
*TRK_CreateMenus(struct NewMenu *newmenu, Tag tag1, ...);
void TRK_FreeMenus(struct Menu *menu);
UWORD SetTrackingLevel(UWORD newlevel), GetTrackingLevel(void),
PushTrackingLevel(void), PopTrackingLevel(void),
PopTrackingLevels(void), DecTrackingLevel(void),
NewTrackingLevel(void), HighestTrackingLevel(void);
void FreeTrackingLevel(UWORD level), FreeTrackingLevels(UWORD minlevel),
FreeCurrentTrackingLevel(void), FreeUpperTrackingLevels(void);
struct IFFHandle *TRK_AllocIFF(void),
*TRK_CreateIFFasDOS(LONG rwMode, UBYTE *filename, long accessMode),
*TRK_CreateIFFasClip(LONG rwMode, LONG unit);
void TRK_FreeIFF(struct IFFHandle *iff),
TRK_DeleteDOSIFF(struct IFFHandle *iff),
TRK_DeleteClipIFF(struct IFFHandle *iff);
LONG TRK_OpenIFF(struct IFFHandle *iff, LONG rwMode);
void TRK_CloseIFF(struct IFFHandle *iff);
LONG TRK_PushChunk(struct IFFHandle *iff, LONG type, LONG id, LONG size),
TRK_PopChunk(struct IFFHandle *iff);
struct ClipboardHandle *TRK_OpenClipboard(LONG unitNum);
void TRK_CloseClipboard(struct ClipboardHandle *clipboard);
struct LocalContextItem *TRK_AllocLocalItem(LONG type, LONG id, LONG ident,
LONG usize);
void TRK_FreeLocalItem(struct LocalContextItem *localItem);
struct IORequest *TRK_GetDevice(UBYTE *devName, ULONG unit, ULONG flags,
UWORD size);
struct DiskObject *TRK_GetDiskObject(char *name),
*TRK_GetDefDiskObject(LONG type),
*TRK_GetDiskObjectNew(char *name);
BOOL TRK_PutDiskObject(char *name, struct DiskObject *diskobj),
TRK_PutDefDiskObject(struct DiskObject *diskobj);
void TRK_FreeDiskObject(struct DiskObject *diskobj);
/* Schlüsselnummern für die Standard-Libraries bei OpenStdLibrary: */
#define STDLIB_ASL 0
#define STDLIB_COMMODITIES 4
/* #define STDLIB_CX 8 diese library gibt's garnicht */
#define STDLIB_DISKFONT 12
#define STDLIB_DOS 16
#define STDLIB_EXPANSION 20
#define STDLIB_GADTOOLS 24
#define STDLIB_GRAPHICS 28
#define STDLIB_ICON 32
#define STDLIB_IFFPARSE 36
#define STDLIB_INFO 40
#define STDLIB_INTUITION 44
#define STDLIB_KEYMAP 48
#define STDLIB_LAYERS 52
#define STDLIB_MATHFFP 56
#define STDLIB_MATHIEEEDOUBBAS 60
#define STDLIB_MATHIEEEDOUBTRANS 64
#define STDLIB_MATHIEEESINGBAS 68
#define STDLIB_MATHIEEESINGTRANS 72
#define STDLIB_MATHTRANS 76
#define STDLIB_REXXSUPPORT 80
#define STDLIB_REXXSYSLIB 84
#define STDLIB_TRANSLATOR 88
#define STDLIB_UTILITY 92
#define STDLIB_VERSION 96
#define STDLIB_WORKBENCH 100
#define STDLIB_ARP 104
#define STDLIB_REQ 108
#define STDLIB_REQTOOLS 112
/* Kennung für TrackerLib-Alerts: */
#define AN_TrackerLib 0x0C000000
/* Ein Task will auf die Library zugreifen, obwohl er sie nicht geöffnet
hat: */
#define AN_Tracker_illegal_Task (AT_DeadEnd|AN_TrackerLib|0x01)
/* Etwas soll freigegeben werden, ist aber garnicht registriert: */
#define AN_Tracker_double_free (AT_DeadEnd|AN_TrackerLib|0x02)
/* Etwas von unbekanntem Typ soll freigegeben werden: */
#define AN_Tracker_illegal_Type (AT_DeadEnd|AN_TrackerLib|0x03)
/* Unterlauf des TrackingLevels (in DecTrackingLevel): */
#define AN_Tracker_Level_underflow (AN_TrackerLib|0x04)
/* Überlauf des TrackingLevels (in PushTrackingLevel): */
#define AN_Tracker_Level_overflow (AN_TrackerLib|0x05)
/* Kein freier TrackingLevel gefunden (in NewTrackingLevel): */
#define AN_Tracker_Levels_full (AN_TrackerLib|0x06)
#endif